1766
24745
Snažím se načíst předpověď po odtržení, ale dostávám tuto chybu
/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/sklearn/ensemble/weight_boosting.py:29:
DeprecationWarning: numpy.core.umath_tests je interní modul NumPy
a neměly by se dovážet. Bude odstraněn v budoucí NumPy
uvolnění. z numpy.core.umath_tests importovat inner1d
/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/sklearn/base.py:311:
UserWarning: Pokouší se zrušit výběr odhadovacího nástroje DecisionTreeClassifier z
verze 0.20.2 při použití verze 0.19.2. To by mohlo vést k rozbití
kód nebo neplatné výsledky. Použití na vlastní nebezpečí. UserWarning)
/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/sklearn/base.py:311:
UserWarning: Pokoušíte se zrušit zvednutí odhadu RandomForestClassifier z
verze 0.20.2 při použití verze 0.19.2. To by mohlo vést k rozbití
kód nebo neplatné výsledky. Použití na vlastní nebezpečí. UserWarning)
Traceback (poslední hovor poslední): Soubor "rf_pred_model_tester.py",
řádek 7, v
print ('Class:', int (rf.predict (xx))) File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/sklearn/ensemble/forest.py" ,
linka 538, v předpovědět
proba = self.predict_proba (X) File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/sklearn/ensemble/forest.py",
řádek 581, v predict_proba
n_jobs, _, _ = _ partition_estimators (self.n_estimators, self.n_jobs) Soubor
"/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/sklearn/ensemble/base.py",
řádek 153, v _partition_estimators
n_jobs = min (_get_n_jobs (n_jobs), n_estimators) Soubor "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/sklearn/utils/init.py",
řádek 464, v _get_n_jobs
pokud n_jobs <0: TypeError: '<' není podporováno mezi instancemi 'NoneType' a 'int'
Zde je kód, který se snažím spustit
importovat nálev
importovat numpy jako np
s open ('rf_model_1', 'rb') jako f:
rf = pickle.load (f)
xx = np.array ([67, 17832, 1, 1, 0, 33, 1941902452, 36, 33011.0, 19, 18, 0, 2, 1]). přetváření (1, -1)
print ('Class:', int (rf.predict (xx)))
Očekávám takový výsledek:
Třída: [0]
pokud spustím kód na jupyteru, funguje dobře, ale při pokusu o spuštění na terminálu se mi zobrazuje chyba. 
Vaše chyba na rovinu:
UserWarning: Pokoušíte se uvolnit odhadovač RandomForestClassifier z verze 0.20.2 při použití verze 0.19.2. To by mohlo vést k porušení kódu nebo neplatným výsledkům. Použití na vlastní nebezpečí.
A skutečně se to stalo; při nakládání byl atribut n_jobs vašeho RandomForestClassifier udržován na None. Toto je výchozí hodnota pro inicializaci, ale v zákulisí je obvykle nastavena na 1. Více podrobností o n_jobs najdete zde: https://scikit-learn.org/stable/glossary.html#term-n-jobs
Pro vás nastavení rf n_jobs na 1 bude stačit:
importovat nálev
importovat numpy jako np
s open ('rf_model_1', 'rb') jako f:
rf = pickle.load (f)
rf.n_jobs = 1
xx = np.array ([67, 17832, 1, 1, 0, 33, 1941902452, 36, 33011.0, 19, 18, 0, 2, 1]). přetváření (1, -1)
print ('Class:', int (rf.predict (xx)))
|
Vysoce aktivní otázka. Získejte 10 reputace, abyste mohli odpovědět na tuto otázku. Požadavek na reputaci pomáhá chránit tuto otázku před spamem a neodpovědností.
Toto není odpověď, kterou hledáte? Přečtěte si další otázky týkající se značek python-3.x nebo položte vlastní otázku.